It is well known that many devices can transfer data to an externally connected device (receiving device) in order to allow the receiving device to process the data in some particular way. It is often the case that the receiving device requires that the data is received in a particular form. As a result, the transferring device must often be specialty configured to convert data from one form to another so that the receiving device can interpret the data. This often involves having to develop and install special software in the transferring device as well as configuring the device to make use of the special software.
For example, consider a typical prior art personal computer that is connected to a network. Also connected to the network are a number of printers. In order for the personal computer to make use of each one of the printers,, the computer must be configured properly. This can involve the user having to locate print driver software for each one the printers, installing the driver software into the computer and then configuring the computer to make use of each instance of driver software. Having to perform these tasks can be complicated and can present a significant problem to the user.
Consider the magnitude of this problem as applied to printing over a large network or the Internet. It can be seen that in this type of environment, a personal computer can potentially be used to print to a very large number of printers. Unfortunately, having to configure the personal computer to make use of all these printers would be extremely difficult.